package br.com.pucrs.tcc.vo;

import java.io.Serializable;
import java.util.List;

import br.com.pucrs.tcc.ed.Aluno;
import br.com.pucrs.tcc.ed.AreaInteresse;
import br.com.pucrs.tcc.ed.Professor;

public class GrupoAlocado implements Serializable {

	private Integer id;

	private String alunos;

	private String nomeProfessor;

	private String matriculaProfessor;
	
	private String emailProfessor;

	private Professor professor;

	private List<Aluno> integrantes;
	
	private Double coeficienteRendimento;
	
	private List<AreaInteresse> areas;

	private List<Professor> professoresDesejados;

	private boolean detalhado;
	
	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getAlunos() {
		return alunos;
	}

	public void setAlunos(String alunos) {
		this.alunos = alunos;
	}

	public String getNomeProfessor() {
		return nomeProfessor;
	}

	public void setNomeProfessor(String nomeProfessor) {
		this.nomeProfessor = nomeProfessor;
	}

	public String getMatriculaProfessor() {
		return matriculaProfessor;
	}

	public void setMatriculaProfessor(String matriculaProfessor) {
		this.matriculaProfessor = matriculaProfessor;
	}

	public List<Aluno> getIntegrantes() {
		return integrantes;
	}

	public void setIntegrantes(List<Aluno> integrantes) {
		this.integrantes = integrantes;
	}

	public Professor getProfessor() {
		return professor;
	}

	public void setProfessor(Professor professor) {
		this.professor = professor;
	}
	
	public Double getCoeficienteRendimento() {
		return coeficienteRendimento;
	}

	public void setCoeficienteRendimento(Double coeficienteRendimento) {
		this.coeficienteRendimento = coeficienteRendimento;
	}

	public List<AreaInteresse> getAreas() {
		return areas;
	}

	public void setAreas(List<AreaInteresse> areas) {
		this.areas = areas;
	}

	public List<Professor> getProfessoresDesejados() {
		return professoresDesejados;
	}

	public void setProfessoresDesejados(List<Professor> professoresDesejados) {
		this.professoresDesejados = professoresDesejados;
	}
	
	public boolean isDetalhado() {
		return detalhado;
	}

	public void setDetalhado(boolean detalhado) {
		this.detalhado = detalhado;
	}


	public String getEmailProfessor() {
		return emailProfessor;
	}

	public void setEmailProfessor(String emailProfessor) {
		this.emailProfessor = emailProfessor;
	}

	@Override
	public boolean equals(Object obj) {

		if (!(obj instanceof GrupoAlocado)) {
			return false;
		}

		GrupoAlocado grupo = (GrupoAlocado) obj;

		if (grupo.id == null) {
			return false;
		} else {
			if (grupo.id.equals(this.id)) {
				return true;
			}
		}

		return false;
	}

}
